import { queryUpdateVersion } from '@/utils/api/index'
export const paymentChannels = <any>[
	{
		name: '支付宝',
		value: 'ZFB',
		icon: '108',
		provider: 'alipay'
	},
	{
		name: '微信',
		value: 'WX',
		icon: '110',
		provider: 'wxpay'
	},

	{
		name: '钱包',
		value: 'WALLET',
		icon: '109'
	},
]

export const payment = (provider, data) => {
	return new Promise((r : any, c : any) => {
		if (provider == 'ZFB') {
			uni.requestPayment({
				provider: 'alipay',
				orderInfo: data.externalData, //微信、支付宝订单数据 【注意微信的订单信息，键值应该全部是小写，不能采用驼峰命名】
				success: function (res) {
					uni.showToast({
						title:  data.freeCode?'助力成功!':'支付成功!',
						icon: 'none' 
					})
					r()
				},
				fail: function (err) {
					uni.showToast({
						title: '支付失败!',
						icon: 'none'
					})
					c()
					console.log('fail:' + JSON.stringify(err));
				}
			});
		} else if (provider == 'WALLET') {
			if (data.payState.value == 'SUCCESS') {
				uni.showToast({
					title:  data.freeCode?'助力成功!':'支付成功!',
					icon: 'none' 
				})
				r()
			} else {
				uni.showToast({
					title: data.payState.name,
					icon: 'none'
				})
				c()
			}
		} else {
			uni.requestPayment({
				provider: 'wxpay',
				orderInfo: data.externalData, //微信、支付宝订单数据 【注意微信的订单信息，键值应该全部是小写，不能采用驼峰命名】
				success: function (res) {
					uni.showToast({
						title:  data.freeCode?'助力成功!':'支付成功!',
						icon: 'none' 
					})
					r()
				},
				fail: function (err) {
					uni.showToast({
						title: '支付失败!',
						icon: 'none'
					})
					c()
					console.log('fail:' + JSON.stringify(err));
				}
			});
		}

	})
	// if(provider == 'WX'){
	// 	uni.showToast({
	// 		title:'当前支付方式没有开通!',
	// 		icon:'none'
	// 	})
	// }else{


	// }
}
function install(path) {
	//安装
	plus.runtime.install(
		path, {
		force: true
	},
		function () {
			//uni.hideNavigationBarLoading();
			plus.runtime.restart();
			// this.isup = false;
			uni.hideLoading();
		},
		function (e) {
			uni.showModal({
				title: '提醒',
				content: '安装失败，请下载最新版本', //
				showCancel: false,
				confirmText: '知道了',
				success: function (res) {
					uni.hideLoading()
				}
			});
		}
	);
}

function download(url) {
	uni.showLoading({
		title: '下载安装新版本中,请稍后...'
	});
	const downloadTask = uni.downloadFile({
		url: url,
		success: function (res) {
			if (res.statusCode === 200) {
				var tempFilePaths = res.tempFilePath;
				install(tempFilePaths);
				return;
			}
		},
		fail: err => {
			uni.hideLoading();
			uni.showModal({
				content: '下载失败,' + err,
				showCancel: false
			});
		}
	});

	downloadTask.onProgressUpdate(function (res) {
		// that.percent = res.progress;
	});
}

export const up_check = () => {
	// 检测升级
	plus.runtime.getProperty(plus.runtime.appid, function (widgetInfo) {
		queryUpdateVersion({ data: { currentVersion: widgetInfo.version } }).then((res) => {
			console.log(res.data)
			console.log(widgetInfo)
			if (res.code == 200) {
				if (widgetInfo.version * 1 < res.data.version * 1) {
					download(res.data.downloadUrl);
				}
			}
		})
		// checkVersion().then(res => {
		// 	if (res.data.code == 200) {
		// 		if (widgetInfo) {
		// 			if (widgetInfo.version * 1 < res.data.result.versionCode * 1) {
		// 				download(getUrl(1) + '/public/file' + res.data.result.fileUrl);
		// 			}
		// 		}

		// 	}
		// });
	});
}